\documentclass{beamer}
\usepackage[utf8x]{inputenc}
%\usepackage{default}
\usepackage{verbatim}
\usepackage{graphicx}
\usepackage[english]{babel}


\newcommand{\projectName}{Personal Assistant}
\newcommand{\projectAbbreviation}{Personal Assistent}


\title{\projectName}
%\subtitle{\projectAbbreviation}
\author{Maarten Inja, Chiel Kooijman, Arjen Swellengrebel, Richard Torenvliet}
\institute{UvA}
\usetheme{Berkeley}
%\usetheme{Berlin}
\newcommand{\slide}[2]
{
\begin{frame}
\frametitle{#1} 

#2

\end{frame}
}



\begin{document}
\begin{frame}
\titlepage
\end{frame}



\section{Introduction}

\begin{frame}
\frametitle{Introduction}
    \framesubtitle{What are we going to discuss?}
\tableofcontents
\end{frame}
% explain that we are going to tell this in this order.

\begin{frame}
\frametitle{What is ``Personal Assistant''?}
\framesubtitle{And why?}
The Personal Assistant (PA) is a mobile application based on peer-to-peer communication between PAs of other users.
% from now on personal assistant is PA!
\begin{itemize}
    \item It enhances the planning process of all your appointments.
    \item It plans your daily tasks more efficiently.
    \item It can save time with all the knowledge it collects in doing this! 
\end{itemize}
Because we believe the planning process can be a more efficient! 
\end{frame}
% Basic explanation of what this thing is. 
% Really short explanation about what it can do. 
% Really short explanation about why we chose to do this

\section{Goals}

\begin{frame}
\frametitle{Main Goal}
\framesubtitle{Primary Aid in Planning}

Tasks to aid the user with directly:
\begin{itemize}
    \item Make appointments with other people with as little human interaction as possible.
% fe: planning a meeting on an open spot in everyones agenda
    \item Easy reschedule appointments that suddenly become double planned. 
% fe: you have a movable appointment (1) and an appointment your really want to be at but it can only be done at the time
% of appointment (1).. solution: itll move appointment (1)
    \item Prioritize invitees.
% vb: je wil goede vrienden eerder bij je verjaardag dan verre gerelateerden  
% fe: you would rather like your close friends to be at your birthday party than your distant relatives.
    \item Plan recurring events.
% fe: you want to go to your parents for a visit every week
    \item Help with possible prerequisites for events. 
% fe: before your exam you have to plan X hours of study time
\end{itemize}
\end{frame}

\begin{frame}
\frametitle{Secondary Goal}
\framesubtitle{Secondary Aid in Planning}

The PA can also help the user further:
\begin{itemize}
    \item Take the location for different events into consideration. 
% fe: between your appointment in Maastricht and your appointment in Amsterdam there should be at least X hours of travel time
    \item Plan the journey between different events, by public transport or an other form of transportation based on user preferences.
% fe: your bike route or train journey are planned and showed to you when you need it
    \item Adjust travel plans based on weather forecasts. 
% fe: you only want to go by bike if its raining
    \item Set the user alarm clock based on decided travel plans.
% fe: the alarm clock is set earlier when it rains so you can take the longer route with public transport
\end{itemize}
\end{frame}

\section{Design Considerations}

\begin{frame}
\frametitle{Design Considerations}
General constraints:
% we have some constraints when we want to create such a system
\begin{itemize}
    \item Privacy 
% settings to ensure users feel their agenda can be kept private
    \item User Friendliness
% shouldn't drown in the options
        \begin{enumerate}
            \item Important notifications (such as an event has been scheduled)
            \item Overview of the calendar 
            \item The user can always overrule the PA. 
        \end{enumerate}
    \item Group Usage
% a normal digital calendar on the surface if peers do not use the PA
    \item Personal Preferences
% people can choice not to use some options, shouldnt be problematic in scheduling events among PAs
\end{itemize}
\end{frame}

\begin{frame}
\frametitle{Guidelines} % (for development)
We envision a system to which more functionality is continiously added.
\begin{itemize}
    \item A base system that works conveniently.
% start with a normal digital calendar
% add planning of events among friends
% add more stuff
    \item More functionality which can be added later.
\end{itemize}
This is to ensure a user base that can grow steadily. Functionality that is later added
can always be turned off or on by the user. 
Example: travel arrangements made by the PA.
\end{frame}


\section{Requirements \& Analysis}
%\subsection{One Use Case}
%\begin{frame}
%\frametitle{A Use Case}
%\framesubtitle{Jan-Pieter}
%Jan-Pieter is a fictional student at the UvA and has to plan a meeting with three more persons. 
%He opens up his Personal Assistant on his smartphone ...
%\end{frame}
%
%\begin{frame}
%\frametitle{A Use Case}
%\framesubtitle{Jan-Pieter}
%\end{frame}

%\subsection{Done} manage j




\begin{frame}
\frametitle{Knowledge}
\framesubtitle{Where do we get our information from?}
% we need a lot of information in order for this to work
We have several sources of information. Not every one is very reliable.
\begin{itemize}
    \item ICS File Format: the file format most calendar applications use. Use this for our application and import the user `old' agenda data. 
% very reliable
    \item Geographical Information: Google Maps API. 
% very reliable
    \item Public Transport Advice: parsing Google Maps site.
% very unreliable
    \item Weather Forecast: Buienradar API.
% reliable for now (future costs?), local scale but promising for Europe and beyond
    \item Phone Information: location and status.
% obvious
    \item Learned Information, first default settings and after some time user specific learned settings
% next slide!
\end{itemize}
\end{frame}

\begin{frame}
    \frametitle{Machine Learning}
We will apply machine learning for two things:
\begin{enumerate}
    \item User specific settings. From default values to specifics. Would a user rather 
go to a party or a study session? User feedback is asked or inferred from the user location.
    \item Suggestions. Apply basic learning methods to suggest more persons for that meeting.Or the same place as always for the appointment with person X. 
% will see how this works in the example.
\end{enumerate}
\end{frame}

\section{System Architecture}
\begin{frame}  
    \frametitle{Event Types}
We define event types that have certain properties. Events have different properties that 
allow the PA to plan efficiently. A couple of possible events:
\begin{itemize}
    \item Birthday
    \item Meeting
    \item Diner
    \item Work
    \item Date
    \item Drinks
    \item Deadlines
% sequence of events before hand
\end{itemize}
\end{frame}

\begin{frame}
\frametitle{Event Properties}
Event properties are:
\begin{itemize}
    \item Importance (from very important to very unimportant)
    \item Reschedulable
    \item Dependencies
    \item Actions
    \item Location
    \item Group Cluster
\end{itemize}   
\end{frame}

\begin{frame}
    \frametitle{Basic PA Operation}
\begin{itemize}
    \item We will not discuss complete algorithms. 
    \item Planning problems can be rewritten to search problems.
    \item It is better to see how this works with some examples 
\end{itemize}
\end{frame}

\section{Examples} 

\begin{frame}
\frametitle{Planning an Event} 
\framesubtitle{A lot of buttons...}
Ed, a student, wants to plan a meeting with Person X, Y, Z. He grabs his smart phone and presses ``Plan New Event''. 
\begin{center}
\includegraphics[width=8.5cm]{planEvent}
\end{center}
% Every option means pressing a button that brings up a menu in which you can 
% select the preferred option. For events this means a drop down menu. For contacts
% this means typing with autosugestions. For location it means drop down or select on map.
\end{frame}

\begin{frame}
\frametitle{Planning an Event}
\framesubtitle{Success!}
Once the PA is done a dismissable notification pops up.
\begin{center}
\includegraphics[width=3.9cm]{notification}
\end{center}
\end{frame}

\begin{frame}
\frametitle{Planning an Event}
Ed can check how his day will look (through PA menu). 
\begin{center}
\includegraphics[width=8.5cm]{notificationPlusOverview}
\end{center}
% other views are definitely possible.
\end{frame}


\begin{frame}
\frametitle{Planning an Event}
\framesubtitle{Perfect Scenario}
From the PA perspective: 
\begin{enumerate}
    \item Receive a task: plan a meeting of one hour with person X, Y, Z and Q this week at Science Park between 9 AM and 5 PM.
    \item Contact each persons PA and ask for possible moments. Each PA takes into account the following factors:
        \begin{itemize}
            \item When is no other appointment scheduled?
            \item For open moments: is there enough time travel to and from Science Park for other meetings?  
        \end{itemize}
    \item Perhaps the PA of the other persons require permission to start scheduling.
    \item A suitable moment is found. The meeting is scheduled at an arbitrary open moment and the users are notified. 
\end{enumerate}
\end{frame}

\begin{frame}
\frametitle{Planning an Event}
\framesubtitle{Problem Scenario: Not Everyone Uses the PA}
From the PA perspective:  
\begin{enumerate}
    \item Receive a task: same task.
    \item Contact the PA's available and ask for possible moments just like last time.
    \item A suitable moment is found. The participants without a PA are e-mailed a web-form in which they can manually click 
    when they are available. %\footnote{Much like a datumprikker}    
    \item The participants with a PA are notified the other participants are mailed.  
    \item When the participants without a PA have finished their manual labor every participant is notified. The PA schedules the event. 
\end{enumerate}
\end{frame}


\begin{frame}
\frametitle{Planning an Event}
\framesubtitle{Problem Scenario: No Suitable Moment Can Be Found}
From the PA perspective:  
\begin{enumerate}
    \item Receive a task: same task.
    \item Contact each PA involved and ask for possible moments just like last time.
    \item No suitable moment is found! Start troubleshooting:
    \item Ask each PA: Is there a moment with just one conflicting event. If so, attempt to reschedule that event. 
% this can be extra awesomely be done if the event can be rescheduled by just PAs
    \item Ask the host to specify broader terms for the meeting and specify why this does not work.
\end{enumerate}
\end{frame}

\begin{frame}
\frametitle{Planning a Different Kind of Event}
\framesubtitle{Sequences of Events}
Ed has an exam KBMS on the 29th of March. He decides he needs approximately 20 hours of study time. The PA automates this process for Ed:
\begin{itemize}
    \item The PA plans 10 blocks of 2 hours over the course of a couple of weeks for Ed to study. 
    \item The PA knows that Ed has to be at home in order to do this. 
\end{itemize}
If Ed is invited to a party and the PA can reschedule his study time the PA will do so. 
\end{frame}

\begin{frame}
\frametitle{Questions}
\begin{center}
Questions?
\end{center}
\end{frame}


%\begin{frame}
%\frametitle{Voorbeeld}
%%\hspace{-2cm}
%\includegraphics[width=\textwidth]{clusteringPicture}
%%\includegraphics[width=\textwidth]{clustering.pdf}
%\end{frame}

\end{document}
